gusucode.com > 《MATLAB图像与视频处理实用案例详解》代码 > 《MATLAB图像与视频处理实用案例详解》代码/第 16 章 基于Hu不变矩的图像检索技术/Analysis.m
function D = Analysis(filename, fresultNames, index, flag) if nargin < 4 flag = 1; end [queryx, querymap] = imread(filename); if isempty(querymap) [queryx, querymap] = rgb2ind(queryx, 256); end query = ind2rgb(queryx, querymap); query = rgb2gray(query); D = []; for i = 1:4 tempstr = fresultNames{index(i)}; [X, RGBmap] = imread(tempstr); img = ind2rgb(X, RGBmap); img = rgb2gray(img); dm = imabsdiff(query, img); df = sum(dm(:))/sum(query(:)); D = [D df]; end D = 1 - D; if flag figure; box on; plot(D); title('检索结果分析', 'FontWeight', 'Bold'); xlabel('检索结果序号', 'FontWeight', 'Bold') ylabel('检索结果相似度比率', 'FontWeight', 'Bold') end